unit CidadeDM;

{$mode objfpc}{$H+}

interface

uses
 Classes, SysUtils, DB, FileUtil, LResources, Forms, Controls, Graphics,
  Dialogs, ZDataset, ZSqlUpdate, ZSequence, MainDM, QueryConditions;

type

  { TCidadeData }

    TCidadeData = class(TMainDataModule)
    CidadeDatasource: TDatasource;
    CidadeZQuerydesc_cidade: TStringField;
    CidadeZQueryid_cidade: TLargeintField;
    CidadeZQueryuf: TStringField;
    CidadeZSequence: TZSequence;
    CidadeZUpdate: TZUpdateSQL;
    CidadeZQuery: TZQuery;
    procedure DataModuleCreate(Sender: TObject);
    /// Abre o DataSet
    procedure OpenDataSet(); override;
    /// Fecha o DataSet
    procedure CloseDataSet(); override;
    /// Realiza busca
    /// @param(Condicoes são as condições para a busca)
    /// @param(Tabela é a tabela no banco de dados)
    procedure Search(Condicoes: TQueryConditions; Tabela: string); override;
  end;

var
  CidadeData: TCidadeData;

implementation

uses ConnectionDM;

{ TCidadeData }


procedure TCidadeData.DataModuleCreate(Sender: TObject);
begin
   MainDataSet := CidadeZQuery;
end;


procedure TCidadeData.OpenDataSet;
begin
  ConnectionData.EmptyQuery(CidadeZQuery, 'cidade');
end;

procedure TCidadeData.CloseDataSet;
begin
  CidadeZQuery.Close();
end;

procedure TCidadeData.Search(Condicoes: TQueryConditions; Tabela: string);
begin
    ConnectionData.OpenQueryConditions(CidadeZQuery, Tabela, Condicoes);
end;

initialization
  {$I cidadedm.lrs}

end.

